/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package session;

import java.util.List;
import javax.ejb.Remote;
import model.Defectlog;
import model.Priority;
import model.Severity;

/**
 *
 * @author HuyNVK
 */
@Remote
public interface DefectlogFacadeRemote {

    void create(Defectlog defectlog);

    void edit(Defectlog defectlog);

    void remove(Defectlog defectlog);

    Defectlog find(Object id);

    List<Defectlog> findAll();

    List<Defectlog> findRange(int[] range);

    int count();
    
    Defectlog merge(Defectlog defectlog);
    
    void deleteByID(int id);
    
    void insert(Defectlog defectlog);
    
    int countByLogType(model.Logtype logtype) throws Exception;
    
    int countByStatus(model.Logstatus logstatus) throws Exception;
    
    int countByEmployee(model.Employee employee) throws Exception;
    
    int countBySeverity(model.Severity severity) throws Exception;
    
    int countByPriority(model.Priority priority) throws Exception;
    
    int getMaxID() throws Exception;
    
    List<Defectlog> search(String title, String statusID, 
            String severityID, String priorityID, String logtypeID) throws Exception;

}
